Join point designation diagrams: a visual design notation for join point selections in aspect-oriented software development

نویسنده

  • Dominik Stein
چکیده

Sharing knowledge about program specifications is a crucial task in collaborative software development. Developers need to be able to properly assess the objectives of the program specification in order to adequately deploy or evolve a piece of program. The specification of join point selections (also known as "pointcuts") in Aspect-Oriented Software Development (AOSD) is a piece of a program which frequently tends to grow quite complex, in particular if the join point selections involve selection constraints on the dynamic execution history of the program. In that case, readers of the pointcut specification frequently find themselves confronted with considerable comprehension problems because they need to inspect and realize an intricate and fragmented program specification in order to reconstruct the true objectives of the join point selection. This thesis presents Join Point Designation Diagrams (JPDDs) as a possible solution to the problem. JPDDs are a visual notation that provides an extensive set of join point selection means which are consolidated from a variety of contemporary aspect oriented programming languages. JPDDs are capable of highlighting different join point selection constraints depending on the conceptual view on program execution which underlies the join point selection. With the help of these means, JPDDs are capable of representing complex join point selections on the dynamic execution of a program in a succinct and concise manner. JPDDs may be used by software developers of different aspect oriented programming languages to represent their join point selections for the sake of an improved comprehensibility of the join point selections and – thus – for the sake of an easier communication between software developers. This thesis gives empirical evidence that JPDDs indeed facilitate the comprehensibility of join point selections. To do so, it conducts a controlled experiment which compares JPDDs to equivalent pointcut implementations in an aspect oriented programming language. The experiment shows that JPDDs have a clear benefit over their codified counterparts in most of the case, while only in few cases no such benefit could be measured.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Towards the Integration of Theme/UML and JPDDs

Aspect-oriented design (AOD) is an active field of research, reflecting the stage of (im)maturity of the aspect-oriented paradigm in general. A number of different approaches to AOD have emerged that have strengths in different areas. For example, Theme/UML provides a means for symmetric decomposition and composition of concern designs, and defines a composition relationship through which the d...

متن کامل

On Representing Join Points in the UML

Join points represent the key concept in Aspect-Orientation. Join points define the places where two concerns crosscut one another. It is a major task for aspect-oriented designers to specify a set of join points at which two concern models are (inter)connected to each other. Hence, it is a primary task for an aspect-oriented modeling language to provide suitable representations for join points...

متن کامل

Representing Shared Join Points with State Charts: A High Level Design Approach

Aspect Oriented Programming promises many advantages at programming level by incorporating the cross cutting concerns into separate units, called aspects. Join Points are distinguishing features of Aspect Oriented Programming as they define the points where core requirements and crosscutting concerns are (inter)connected. Currently, there is a problem of multiple aspects’ composition at the sam...

متن کامل

isualizing oin Point Selections Using Interaction- ased vs. State- ased Notations Exemplified With elp of usiness Rules

In Aspect-Oriented Software Development, the selection of join points is an essential part. Join point selections identify the points in a program (i.e. in its code, or during its execution) at which aspectual adaptations need to take place. In order to communicate such selections independent of the underlying aspectoriented programming language, it is desirable to visualize join point selectio...

متن کامل

Design-Based Pointcuts Robustness Against Software Evolution

Aspect-Oriented Programming (AOP) is a powerful technique to better modularize object-oriented programs by introducing crosscutting concerns in a safe and noninvasive way. Unfortunately, most of the current join point models are too coupled with the application code. This fact harms the evolvability of the program, hinders the concerns selection and reduces the aspect reusability. To overcome t...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010